#给定一个不超过 5 位得正整数（不转换为字符串）判断该数的位数，依次打印出万位、千位、百位、十位、个位的数字
def result(number):
    ##判断位数
    if number < 10:
        digit = 1
    elif number < 100:
        digit = 2
    elif number < 1000:
        digit = 3
    elif number < 10000:
        digit = 4
    elif number < 100000:
        digit = 5
    else:
        return -1

    print(f"这是一个 {digit} 位数")

    ##提前位数


    wan = number // 10000
    qian = (number // 1000) % 10
    bai = (number // 100) % 10
    shi = (number // 10) % 10
    ge = number % 10

    print(f"您输入的数字是 {number},它的位数如下： ")
    print(f"个位是 {ge}")
    print(f"十位是 {shi}")
    print(f"百位是 {bai}")
    print(f"千位是 {qian}")
    print(f"万位是 {wan}")


##再写主程序
while True:
    try:
        number = int(input("请输入一个五位数的正整数："))
        ##判断
        if number < 0 or number > 99999:
            print("输入不合法，请重新输入一个 0~99999 之间的数字")
        else:
            result(number)
            break
    except ValueError:
        print("请输入有效的整数")


